Imports System.Data

Namespace Helpers
    ''' <summary>
    ''' Esta clase es la que se tiene que llenar para devolverla al cliente.
    ''' </summary>
    ''' <remarks></remarks>
    Public Class ResultSet
        ''' <summary>
        ''' El numero total de filas que tiene la consulta.
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public Property total As Long
        ''' <summary>
        ''' El set de datos que se va a devolver al cliente.
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public Property gridData As DataTable
        ''' <summary>
        ''' Si la operacion termino satisfactoriamente.
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public Property success As Boolean
        ''' <summary>
        ''' Mensaje que se va a mostrar en el cliente, si success se devuelve en false, este mensaje se muestra automaticamente.
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public Property message As String

        Public Sub LoadTable(table As DataTable)
            total = table.Rows.Count
            gridData = table
            success = True
        End Sub

        Public Function ToJsonString() As String
            Return Serializer.Serialize(Me)
        End Function
    End Class
End Namespace